\section{Implementation}
\label{sec:implementation}

% I do not really see the use of this section?

We have implemented the model in Python 2.7\footnote{The repository with the
source can be cloned from \url{http://sslp2014.googlecode.com}}. The code has
three important packages:
\begin{itemize}
    \item \emph{cache.py}, a module which is able to write and read some Python
variables from file which comes in handy. We can train once and then use the
cache subsequent runs
    \item \emph{corpus.py}, a module which reads the corpus files and calculates
\emph{n-grams}
    \item \emph{imb1.py}, a module which learns the ibm model, finds Viterbi
alignments and calculates precision and recall scores.
\end{itemize}

We followed the note \emph{Statistical Machine Translation: IBM Models 1 and 2}
written by Michael Collins closely while implementing the model. The PDF is also
included in the repository.
